package com.xjh.basestudy.designmode.createMode.createMode3_FactoryMethod.p3_factory;

import com.xjh.basestudy.designmode.createMode.createMode3_FactoryMethod.p1_original.Airplane;
import com.xjh.basestudy.designmode.createMode.createMode3_FactoryMethod.p1_original.Enemy;

import java.util.Random;

/**
 * @author XuJianHua
 * @date 2022-09-22 15:54:22
 * @description 飞机工厂实现类：实现工厂方法，并通过飞机实体的构造方法来初始化坐标
 * *飞机工厂类AirplaneFactory与坦克工厂类TankFactory的代码简洁、明了，
 * * 它们都以关键字implements声明了本类是实现工厂接口Factory的工厂实现类
 * * ，并且在第4行给出了工厂方法create()的具体实现，其中飞机工厂制造飞机，坦克工厂制造坦克，各自有其独特的生产方式。
 */
public class AirplaneFactory implements Factory {

    @Override
    public Enemy create(int screenWidth) {
        Random random = new Random();
        return new Airplane(random.nextInt(screenWidth), 0);
    }

}